home *** CD-ROM | disk | FTP | other *** search
/ ftp.mactech.com 2010 / ftp.mactech.com.tar / ftp.mactech.com / thinkref / archive / THINKPascalUH2.1.sea / THINKPas Univ Hdr 2.1 / Interfaces / CTBUtilities.p < prev    next >
Text File  |  1995-09-14  |  5KB  |  199 lines

  1. { Converted with MPW2TPas Tuesday, September 12, 1995 5:45:04 PM }
  2. {}
  3. {     File:        CTBUtilities.p}
  4. { }
  5. {     Contains:    Communications Toolbox Utilities interfaces.}
  6. { }
  7. {     Version:    Technology:    System 7.5}
  8. {                 Package:    Universal Interfaces 2.1 in “MPW Latest” on ETO #18}
  9. { }
  10. {     Copyright:    © 1984-1995 by Apple Computer, Inc.}
  11. {                 All rights reserved.}
  12. { }
  13. {     Bugs?:        If you find a problem with this file, use the Apple Bug Reporter}
  14. {                 stack.  Include the file and version information (from above)}
  15. {                 in the problem description and send to:}
  16. {                     Internet:    apple.bugs@applelink.apple.com}
  17. {                     AppleLink:    APPLE.BUGS}
  18. { }
  19. {}
  20.  
  21. unit CTBUtilities;
  22. interface
  23.  
  24.  
  25. {$IFC UNDEFINED __CTBUTILITIES__}
  26. {$SETC __CTBUTILITIES__ := 1}
  27.  
  28.     uses
  29.         ConditionalMacros, Types, Memory, Quickdraw, Dialogs, StandardFile, AppleTalk;
  30.  
  31. { $PUSH}
  32. { $ALIGN MAC68K}
  33. { $LibExport+}
  34.  
  35.     const
  36. {    version of Comm Toolbox Utilities    }
  37.         curCTBUVersion = 2;
  38. {    Error codes/types    }
  39.         ctbuGenericError = -1;
  40.         ctbuNoErr = 0;
  41.  
  42.  
  43.     type
  44.         CTBUErr = OSErr;
  45.  
  46.  
  47.     const
  48.         chooseDisaster = -2;
  49.         chooseFailed = -1;
  50.         chooseAborted = 0;
  51.         chooseOKMinor = 1;
  52.         chooseOKMajor = 2;
  53.         chooseCancel = 3;
  54.  
  55.  
  56.     type
  57.         ChooseReturnCode = INTEGER;
  58.  
  59.  
  60.     const
  61.         nlOk = 0;
  62.         nlCancel = 1;
  63.         nlEject = 2;
  64.  
  65.  
  66.     type
  67.         NuLookupReturnCode = INTEGER;
  68.  
  69.  
  70.     const
  71.         nameInclude = 1;
  72.         nameDisable = 2;
  73.         nameReject = 3;
  74.  
  75.  
  76.     type
  77.         NameFilterReturnCode = INTEGER;
  78.  
  79.  
  80.     const
  81.         zoneInclude = 1;
  82.         zoneDisable = 2;
  83.         zoneReject = 3;
  84.  
  85.  
  86.     type
  87.         ZoneFilterReturnCode = INTEGER;
  88.  
  89.         DialogHookProcPtr = ProcPtr;  { FUNCTION DialogHook(item: INTEGER; theDialog: DialogPtr): INTEGER; }
  90.         DialogHookUPP = UniversalProcPtr;
  91.  
  92.     const
  93.         uppDialogHookProcInfo = $000003A0; { FUNCTION (2 byte param, 4 byte param): 2 byte result; }
  94.  
  95.     function NewDialogHookProc (userRoutine: DialogHookProcPtr): DialogHookUPP;
  96.     {$IFC NOT GENERATINGCFM }
  97.     inline
  98.         $2E9F;
  99.     {$ENDC}
  100.  
  101.     function CallDialogHookProc (item: INTEGER; theDialog: DialogPtr; userRoutine: DialogHookUPP): INTEGER;
  102.     {$IFC NOT GENERATINGCFM}
  103.     inline
  104.         $205F, $4E90;
  105.     {$ENDC}
  106.  
  107.     const
  108. {    Values for hookProc items        }
  109.         hookOK = 1;
  110.         hookCancel = 2;
  111.         hookOutline = 3;
  112.         hookTitle = 4;
  113.         hookItemList = 5;
  114.         hookZoneTitle = 6;
  115.         hookZoneList = 7;
  116.         hookLine = 8;
  117.         hookVersion = 9;
  118.         hookReserved1 = 10;
  119.         hookReserved2 = 11;
  120.         hookReserved3 = 12;
  121.         hookReserved4 = 13;
  122. {    "virtual" hookProc items    }
  123.         hookNull = 100;
  124.         hookItemRefresh = 101;
  125.         hookZoneRefresh = 102;
  126.         hookEject = 103;
  127.         hookPreflight = 104;
  128.         hookPostflight = 105;
  129.         hookKeyBase = 1000;
  130.  
  131. {    NuLookup structures/constants    }
  132.  
  133.     type
  134.         NLTypeEntry = record
  135.                 hIcon: Handle;
  136.                 typeStr: Str32;
  137.             end;
  138.  
  139.         NLType = array[0..3] of NLTypeEntry;
  140.  
  141.         NBPReply = record
  142.                 theEntity: EntityName;
  143.                 theAddr: AddrBlock;
  144.             end;
  145.  
  146.         NameFilterProcPtr = ProcPtr;  { FUNCTION NameFilter(VAR theEntity: EntityName): INTEGER; }
  147.         NameFilterUPP = UniversalProcPtr;
  148.  
  149.     const
  150.         uppNameFilterProcInfo = $000000E0; { FUNCTION (4 byte param): 2 byte result; }
  151.  
  152.     function NewNameFilterProc (userRoutine: NameFilterProcPtr): NameFilterUPP;
  153.     {$IFC NOT GENERATINGCFM }
  154.     inline
  155.         $2E9F;
  156.     {$ENDC}
  157.  
  158.     function CallNameFilterProc (var theEntity: EntityName; userRoutine: NameFilterUPP): INTEGER;
  159.     {$IFC NOT GENERATINGCFM}
  160.     inline
  161.         $205F, $4E90;
  162.     {$ENDC}
  163.     type
  164.         ZoneFilterProcPtr = ProcPtr;  { FUNCTION ZoneFilter(theZone: ConstStr32Param): INTEGER; }
  165.         ZoneFilterUPP = UniversalProcPtr;
  166.  
  167.     const
  168.         uppZoneFilterProcInfo = $000000E0; { FUNCTION (4 byte param): 2 byte result; }
  169.  
  170.     function NewZoneFilterProc (userRoutine: ZoneFilterProcPtr): ZoneFilterUPP;
  171.     {$IFC NOT GENERATINGCFM }
  172.     inline
  173.         $2E9F;
  174.     {$ENDC}
  175.  
  176.     function CallZoneFilterProc (theZone: ConstStr32Param; userRoutine: ZoneFilterUPP): INTEGER;
  177.     {$IFC NOT GENERATINGCFM}
  178.     inline
  179.         $205F, $4E90;
  180.     {$ENDC}
  181.  
  182.     function InitCTBUtilities: CTBUErr;
  183.     function CTBGetCTBVersion: INTEGER;
  184.     function StandardNBP (where: Point; prompt: ConstStr255Param; numTypes: INTEGER; var typeList: NLType; nameFilter: NameFilterUPP; zoneFilter: ZoneFilterUPP; hook: DialogHookUPP; var theReply: NBPReply): INTEGER;
  185.     function CustomNBP (where: Point; prompt: ConstStr255Param; numTypes: INTEGER; var typeList: NLType; nameFilter: NameFilterUPP; zoneFilter: ZoneFilterUPP; hook: DialogHookUPP; userData: LONGINT; dialogID: INTEGER; filter: ModalFilterUPP; var theReply: NBPReply): INTEGER;
  186. {$IFC OLDROUTINENAMES }
  187.     function NuLookup (where: Point; prompt: ConstStr255Param; numTypes: INTEGER; var typeList: NLType; nameFilter: NameFilterUPP; zoneFilter: ZoneFilterUPP; hook: DialogHookUPP; var theReply: NBPReply): INTEGER;
  188.     function NuPLookup (where: Point; prompt: ConstStr255Param; numTypes: INTEGER; var typeList: NLType; nameFilter: NameFilterUPP; zoneFilter: ZoneFilterUPP; hook: DialogHookUPP; userData: LONGINT; dialogID: INTEGER; filter: ModalFilterUPP; var theReply: NBPReply): INTEGER;
  189. {$ENDC}
  190.  
  191. { $ALIGN RESET}
  192. { $POP}
  193.  
  194. {$ENDC}
  195.  {__CTBUTILITIES__}
  196.  
  197. implementation
  198. end.
  199.